package com.br.util;

import com.br.categoria.CategoriaDAO;
import com.br.categoria.CategoriaDAOHibernate;
import com.br.estoque.EstoqueDAO;
import com.br.estoque.EstoqueDAOHibernate;
import com.br.fabricante.FabricanteDAO;
import com.br.fabricante.FabricanteDAOHibernate;
import com.br.fornecedo.FornecedoDAO;
import com.br.fornecedo.FornecedoDAOHibernate;
import com.br.marca.MarcaDAO;
import com.br.marca.MarcaDAOHibernate;
import com.br.produto.ProdutoDAO;
import com.br.produto.ProdutoDAOHibernate;
import com.br.sku.SkuDAO;
import com.br.sku.SkuDAOHibernate;

public class DAOFactory {

	public static CategoriaDAO criaCategoriaDAO() {
		CategoriaDAOHibernate categoriaDAOHibernate = new CategoriaDAOHibernate();
		categoriaDAOHibernate.setSessao(HibernateUtil.getSession()
				.getCurrentSession());
		return categoriaDAOHibernate;
	}

	public static MarcaDAO criaMarcaDAO() {
		MarcaDAOHibernate marcaDAOHinernate = new MarcaDAOHibernate();
		marcaDAOHinernate.setSessao(HibernateUtil.getSession()
				.getCurrentSession());
		return marcaDAOHinernate;
	}

	public static FornecedoDAO criaFornecedoDAO() {

		FornecedoDAOHibernate fornecedoDAOHibernate = new FornecedoDAOHibernate();
		fornecedoDAOHibernate.setSessao(HibernateUtil.getSession()
				.getCurrentSession());

		return fornecedoDAOHibernate;
	}

	public static FabricanteDAO criaFabricanteDAO() {

		FabricanteDAOHibernate fabricanteDAOHibernate = new FabricanteDAOHibernate();
		fabricanteDAOHibernate.setSessao(HibernateUtil.getSession()
				.getCurrentSession());

		return fabricanteDAOHibernate;
	}

	public static ProdutoDAO criaProdutoDAO() {

		ProdutoDAOHibernate produtoDAOHibernate = new ProdutoDAOHibernate();
		produtoDAOHibernate.setSessao(HibernateUtil.getSession()
				.getCurrentSession());

		return produtoDAOHibernate;
	}
	
	public static SkuDAO criaSkuDAO() {

		SkuDAOHibernate skuDAOHibernate = new SkuDAOHibernate();
		skuDAOHibernate.setSessao(HibernateUtil.getSession()
				.getCurrentSession());

		return skuDAOHibernate;
	}

	public static EstoqueDAO criaEstoqueDAO() {

		EstoqueDAOHibernate estoqueDAOHibernate = new EstoqueDAOHibernate();
		estoqueDAOHibernate.setSessao(HibernateUtil.getSession()
				.getCurrentSession());

		return estoqueDAOHibernate;
	}
	
}
